//封装： 属性+方法 合并在一起
package main

import (
	"fmt"
)

//自定义结构
type Person struct {
	name string
	sex  string
	age  int
	sal  uint
}

func main() {
	//Person也是一种类型，也可以定义变量
	p1 := Person{"yekai", "man", 50, 100000} //这种写法要求所有元素内容必须写全
	fmt.Println(p1)
	p2 := Person{
		name: "fuhongxue",
		age:  40,
	}
	fmt.Println(p2)
	//匿名化结构定义
	p3 := struct {
		name string
		sex  string
		age  int
		sal  uint
	}{
		name: "fuhongxue2",
		age:  402,
	}
	fmt.Println(p3)
	//元素个数相同，类型一致（顺序+命名）
	p3 = p2
	fmt.Println(p3)
}
